(function (window, $, undefined) {
var phoenixSite = window.phoenixSite || (window.phoenixSite = {});
var basket = phoenixSite.basket || (phoenixSite.basket = {});
var prodIdArray = basket.prodIdArray || (basket.prodIdArray = []);
$.extend(basket, {
init: function () {
// 某些页面可能不需要
var ignoreShowBasketValue = $.trim($('input[data-attr=ignoreShowBasket]:hidden').val());
if (!!ignoreShowBasketValue) {
return;
}
if (!!!localStorage) {
return;
}
var baksetProdArray = localStorage.getItem("baksetProdArray"); //字符串
var prodIdArray_l = ''; //询盘数量
var inquire_LiAll = '';
if (!!baksetProdArray) {
prodIdArray = JSON.parse(baksetProdArray); //数组对象
basket.prodIdArray = prodIdArray;
prodIdArray_l = prodIdArray.length;
} else {
prodIdArray_l = 0;
}
var _ask_delete = phoenixSite.message(phoenixSite.lanEdition, "phoenix_common_delete");
for (var i = 0; i < prodIdArray_l; i++) {
inquire_LiAll += '
' +
'' +
'' + prodIdArray[i]["prodName"] + '' +
'' +
'' +
'' +
'' + _ask_delete + '';
}
var _ask_value = phoenixSite.message(phoenixSite.lanEdition, "phoenix_inquire_basket");
var _ask_value_button = phoenixSite.message(phoenixSite.lanEdition, "phoenix_inquire_button");
var _ask_value_empty = phoenixSite.message(phoenixSite.lanEdition, "phoenix_empty");
var _html = ''
$('body').append(_html);
phoenixSite.sitewidgets.basketThumbToggle();
if (!!baksetProdArray) {
$('#prodInquireBasket').removeAttr('style');
}
var selectInquireCount = $('#selectInquireCount').html();
var shoppingIcon = $('
');
$('body').append(shoppingIcon);
if (!isNaN(parseInt(selectInquireCount)) && parseInt(selectInquireCount) > 0) {
$('.shoppingBasketIcon span').addClass('shoppingIconNum');
$('#shoppingIconNum').html(parseInt(selectInquireCount));
} else {
shoppingIcon.hide();
}
$('body').on('click', '#basketEmpty', function () {
$('.remove-basket-data').triggerHandler('click');
return false;
});
shoppingIcon.on('click', function () {
if (!$(this).hasClass('on')) {
$('#prodInquireBasket').slideDown();
$(this).addClass('on');
} else {
$(this).removeClass('on');
$('#prodInquireBasket').slideUp();
}
});
if (!isNaN(parseInt(selectInquireCount)) && parseInt(selectInquireCount) == 0) {
$('#prodInquireBasket').slideUp();
$('.shoppingBasketIcon').removeClass('on');
}
$('#basketInquire').unbind('click').bind('click', function () {
basket.submitInquireBasket();
$('#basketForm').submit();
});
$(".inquire-basket-listwrap .basket-title").append('');
basket.bindDeleteInquireProd();
//点击加入询盘栏事件
$(document).on('click','.prodlist-pro-inquire',function(){
var prodId = $(this).attr('prodId');
var inquireParam = {
prodId: prodId,
selectParam: ''
};
var arrayInquire = new Array();
arrayInquire.push(inquireParam);
$(' input[name=inquireParams]').val($.toJSON(arrayInquire));
$(' #prodsInquire').submit();
});
$('.pro-detail-basket').unbind('click').bind('click', function () {
if (!!!localStorage) {
return;
}
var prodId = $(this).attr('prodId');
var prodPhotoUrl = $(this).attr('prodPhotoUrl');
var prodName = $(this).attr('prodName');
// 判断是否为产品详情
var prodSelectParam = "";
var prodDetailDiv = $('.pro-detail-basket').parents(".sitewidget-proddetail");
var selectParamStr = '';
var skuParamStr = '';
var quantityStr = "";
var quantity = "";
if (prodDetailDiv[0] != undefined) {
var isNewProd = "1" == $("#isSkuProd").val();
if (isNewProd) {
var skuValueId = $("#skuValueId").val() || '';
skuParamStr = skuValueId;
prodSelectParam = ''
prodPhotoUrl = !!$("#skuImgUrl").val() ? $("#skuImgUrl").val() : prodPhotoUrl;
selectParamStr = "";
} else {
var aChoosed = prodDetailDiv.find("a.choosed");
if (aChoosed[0] != undefined) {
var selectParam = {};
aChoosed.each(function (i, n) {
var name = $(n).parent().parent().parent().children('th').html();
var selectValue = $(n).attr('title');
selectParam[name] = selectValue;
});
selectParamStr = $.toJSON(selectParam);
prodSelectParam = '';
skuParamStr = "";
}
}
// quantity
quantity = $("input.order-quan-input").val() || '';
quantityStr = '';
} else {
prodSelectParam = '';
}
var prodArray = basket.prodIdArray;
if (prodArray.length == 0) {
$('#prodInquireBasket ul').append('' + prodName + '' + prodSelectParam + quantityStr + '' + phoenixSite.message(phoenixSite.lanEdition, "phoenix_common_delete") + '');
var selectInquireCount = $('#selectInquireCount').html();
$('#selectInquireCount').html((parseInt(selectInquireCount) + 1));
$('#shoppingIconNum').html((parseInt(selectInquireCount) + 1));
$('#shoppingIconNum').removeClass('shoppingIconNum').addClass('shoppingIconNum');
$(".shoppingBasketIcon").show();
//if ($(window).width() >= 450) {
$('#prodInquireBasket').show();
//}
prodArray.push({
'prodId': prodId,
'prodPhotoUrl': prodPhotoUrl,
'skuParam': skuParamStr,
'selectParam': selectParamStr,
'prodName': prodName,
'quantity': quantity
});
} else {
var isSimilar = false;
prodArray.forEach(function (n) {
var item = n;
var itemJson = item;
if (itemJson.prodId == prodId) {
if (selectParamStr == itemJson.selectParam && skuParamStr == itemJson.skuParam) {
isSimilar = true;
return;
}
}
})
if (!isSimilar) {
$('#prodInquireBasket ul').append('' + prodName + '' + prodSelectParam + quantityStr + '' + phoenixSite.message(phoenixSite.lanEdition, "phoenix_common_delete") + '');
var selectInquireCount = $('#selectInquireCount').html();
$('#selectInquireCount').html((parseInt(selectInquireCount) + 1));
$('#shoppingIconNum').html((parseInt(selectInquireCount) + 1));
prodArray.push({
'prodId': prodId,
'prodPhotoUrl': prodPhotoUrl,
'skuParam': skuParamStr,
'selectParam': selectParamStr,
'prodName': prodName,
'quantity': quantity
});
}
}
//$.cookie('baksetProdArray', prodArray.join('&&'), {
// expires: 1,
// path: '/'
//});
localStorage.setItem("baksetProdArray", JSON.stringify(prodArray));
basket.bindDeleteInquireProd();
});
basket.bindDeleteInquireProd();
$(document).on("click", ".basket-list-img,.basket-list-name", function () {
var prodId = $(this).parent().attr("prodId");
var _prod_options = {
url: '/phoenix/admin/prod/getProdUrl',
data: {
'prodId': prodId
},
done: function (result) {
if ("error" == result) {
return;
}
var page = phoenixSite.page || (phoenixSite.page = {});
var reg = new RegExp("^/");
if (page._menu_prefix != undefined && reg.test(result)) {
result = page._menu_prefix + result;
}
location.href = result;
}
};
phoenixSite.ajax(_prod_options);
});
},
bindDeleteInquireProd: function () {
$('.basket-list-delate').unbind('click').bind('click', function () {
if (!!!localStorage) {
return;
}
var prodId = $(this).parent().attr('prodId');
var selectParam = $(this).parent().find('input[name=selectParam]').val() || '';
var selectSku = $(this).parent().find('input[name=skuParam]').val() || '';
$(this).parent().remove();
prodIdArray = prodIdArray.filter(function (item) {
var itemJson = item;
if (itemJson.prodId != prodId) {
return true;
} else {
if ((itemJson.selectParam || '') == selectParam && (itemJson.skuParam || '') == selectSku) {
return false;
}
return true;
}
});
if (prodIdArray.length == 0) {
$('#prodInquireBasket').slideUp();
$('.shoppingBasketIcon').removeClass('on');
$('#shoppingIconNum').html('');
$('#shoppingIconNum').removeClass('shoppingIconNum');
$(".shoppingBasketIcon").hide();
localStorage.setItem("baksetProdArray", '');
//$.cookie('baksetProdArray', null, {
// path: "/"
//});
} else {
localStorage.setItem("baksetProdArray", JSON.stringify(prodIdArray));
//$.cookie('baksetProdArray', prodIdArray.join('&&'), {
// expires: 1,
// path: '/'
//});
}
$('#selectInquireCount').html(prodIdArray.length);
$('#shoppingIconNum').html(prodIdArray.length);
if (!prodIdArray.length) {
$('#shoppingIconNum').html('');
}
phoenixSite.basket.prodIdArray = prodIdArray;
});
$(".inquire-basket-listwrap .basket-title .remove-basket-data").unbind('click').bind('click', function () {
if (!!!localStorage) {
return;
}
$(".basket-lists li").each(function () {
$(this).find(".basket-list-delate").trigger("click");
})
$('#selectInquireCount').text('0');
$('#shoppingIconNum').html('');
$('#shoppingIconNum span').removeClass('shoppingIconNum');
//$.cookie('baksetProdArray', null, {
// path: "/"
//});
localStorage.setItem("baksetProdArray", '');
$('#prodInquireBasket').slideUp();
$('.shoppingBasketIcon').removeClass('on');
})
},
submitInquireBasket: function () {
var arrayInquire = new Array();
$('#prodInquireBasket li').each(function (i, n) {
var selectParam = $("input[name=selectParam]", this).val();
var skuParam = $("input[name=skuParam]", this).val();
var quantity = $("input[name=quantity]", this).val();
if (!quantity) {
quantity = "";
}
var inquireParam = {};
if (!!skuParam) {
inquireParam = {
'prodId': $(n).attr('prodId'),
'skuParam': skuParam,
'quantity': quantity
};
} else {
inquireParam = {
'prodId': $(n).attr('prodId'),
'selectParam': selectParam,
'quantity': quantity
};
}
arrayInquire.push(inquireParam);
});
$('#basketForm input[name=inquireParams]').val($.toJSON(arrayInquire));
}
});
})(window, typeof jQuery === 'undefined' ? undefined : jQuery);